package cn.jhc.social.qq.connect;

import org.springframework.social.connect.ApiAdapter;
import org.springframework.social.connect.ConnectionValues;
import org.springframework.social.connect.UserProfile;

import cn.jhc.social.qq.api.QQ;
import cn.jhc.social.qq.api.UserInfo;

public class QQApiAdapter implements ApiAdapter<QQ> {

	@Override
	public boolean test(QQ api) {
		try {
			api.getOpenid();
			return true;
		} catch (Exception e) {
			return false;
		}
		
	}

	@Override
	public void setConnectionValues(QQ api, ConnectionValues values) {
		UserInfo userInfo = api.userOperations().getUserProfile();
		values.setProviderUserId(api.getOpenid());
		values.setDisplayName(userInfo.getNickName());
		values.setImageUrl(userInfo.getFigureUrl());
		//QQ的api中没有profile url，只能加个图片的地址。
		values.setProfileUrl(userInfo.getFigureUrlQQ100());
	}

	@Override
	public UserProfile fetchUserProfile(QQ api) {
		return UserProfile.EMPTY;
	}

	@Override
	public void updateStatus(QQ api, String message) {
	}

}
